#include "Fonts.h"
#include <avr/pgmspace.h>

unsigned char font_8x8[256][8] PROGMEM = {
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* null */
	{ 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* grave */
	{ 0x14, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* dbl acute */
	{ 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* dot */
	{ 0x18, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ring */
	{ 0x28, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* caron */
	{ 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* breve */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08 }, /* ogonek */
	{ 0x00, 0x3F, 0x55, 0x89, 0x89, 0x55, 0x3F, 0x00 }, /* bksp */
	{ 0x00, 0x00, 0x12, 0x0A, 0xFE, 0x0A, 0x12, 0x00 }, /* tab */
	{ 0x00, 0x00, 0xC6, 0x00, 0x10, 0x28, 0x44, 0x00 }, /* enter */
	{ 0x00, 0x00, 0xCE, 0x20, 0x10, 0x08, 0x06, 0x00 }, /* alt */
	{ 0x00, 0x10, 0x28, 0x44, 0xEE, 0x28, 0x38, 0x00 }, /* shift */
	{ 0x00, 0x02, 0x22, 0x42, 0xFE, 0x40, 0x20, 0x00 }, /* return */
	{ 0x00, 0x14, 0x20, 0x7C, 0x24, 0x24, 0x24, 0x00 }, /* fi */
	{ 0x00, 0x1C, 0x24, 0x74, 0x24, 0x24, 0x24, 0x00 }, /* fl */
	{ 0x00, 0xA0, 0xC0, 0xCA, 0xAC, 0x0C, 0x0A, 0x00 }, /* KK */
	{ 0x00, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x00 }, /* fract */
	{ 0x00, 0x1C, 0x10, 0x10, 0x10, 0xD0, 0x30, 0x10 }, /* sqrt */
	{ 0x00, 0xF8, 0x44, 0x20, 0x10, 0x20, 0x44, 0xF8 }, /* sum */
	{ 0x00, 0xFC, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00 }, /* prod */
	{ 0x00, 0x0C, 0x10, 0x10, 0x10, 0x10, 0x10, 0x60 }, /* int */
	{ 0x00, 0x00, 0x10, 0x28, 0x28, 0x44, 0x7C, 0x00 }, /* delta */
	{ 0x00, 0x78, 0x84, 0x84, 0xCC, 0x48, 0xCC, 0x00 }, /* omega */
	{ 0x00, 0x00, 0xFC, 0x48, 0x48, 0x48, 0x48, 0x00 }, /* pi */
	{ 0x00, 0x38, 0x04, 0x3C, 0x44, 0x44, 0x38, 0x00 }, /* deriv */
	{ 0x00, 0x00, 0x00, 0x58, 0xB4, 0x68, 0x00, 0x00 }, /* inf */
	{ 0x00, 0xE0, 0xC8, 0xA4, 0x14, 0x44, 0x38, 0x00 }, /* esc */
	{ 0x00, 0x00, 0x10, 0x20, 0x10, 0x00, 0x78, 0x00 }, /* <= */
	{ 0x00, 0x00, 0x10, 0x7C, 0x10, 0x7C, 0x10, 0x00 }, /* != */
	{ 0x00, 0x00, 0x20, 0x10, 0x20, 0x00, 0x78, 0x00 }, /* >= */
	{ 0x00, 0x00, 0x34, 0x58, 0x00, 0x34, 0x58, 0x00 }, /* approx */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* space */
	{ 0x00, 0x10, 0x10, 0x10, 0x10, 0x00, 0x10, 0x00 }, /* ! */
	{ 0x00, 0x24, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* " */
	{ 0x00, 0x48, 0xFC, 0x48, 0x48, 0xFC, 0x48, 0x00 }, /* # */
	{ 0x10, 0x78, 0x84, 0x60, 0x18, 0x84, 0x78, 0x20 }, /* $ */
	{ 0x00, 0x60, 0xA8, 0xD0, 0x2C, 0x54, 0x18, 0x00 }, /* % */
	{ 0x00, 0x60, 0x90, 0x60, 0x94, 0x88, 0x74, 0x00 }, /* & */
	{ 0x00, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ' */
	{ 0x08, 0x10, 0x20, 0x20, 0x20, 0x20, 0x10, 0x08 }, /* ( */
	{ 0x20, 0x10, 0x08, 0x08, 0x08, 0x08, 0x10, 0x20 }, /* ) */
	{ 0x00, 0x10, 0x54, 0x38, 0x54, 0x10, 0x00, 0x00 }, /* * */
	{ 0x00, 0x00, 0x10, 0x10, 0x7C, 0x10, 0x10, 0x00 }, /* + */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x40 }, /* , */
	{ 0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00 }, /* - */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00 }, /* . */
	{ 0x00, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x00 }, /* / */
	{ 0x00, 0x38, 0x44, 0x44, 0x44, 0x44, 0x38, 0x00 }, /* 0 */
	{ 0x00, 0x08, 0x38, 0x08, 0x08, 0x08, 0x08, 0x00 }, /* 1 */
	{ 0x00, 0x38, 0x44, 0x08, 0x10, 0x20, 0x7C, 0x00 }, /* 2 */
	{ 0x00, 0x38, 0x44, 0x18, 0x04, 0x44, 0x38, 0x00 }, /* 3 */
	{ 0x00, 0x08, 0x18, 0x28, 0x48, 0x7C, 0x08, 0x00 }, /* 4 */
	{ 0x00, 0x7C, 0x40, 0x78, 0x04, 0x44, 0x38, 0x00 }, /* 5 */
	{ 0x00, 0x38, 0x40, 0x78, 0x44, 0x44, 0x38, 0x00 }, /* 6 */
	{ 0x00, 0x7C, 0x08, 0x10, 0x10, 0x20, 0x20, 0x00 }, /* 7 */
	{ 0x00, 0x38, 0x44, 0x38, 0x44, 0x44, 0x38, 0x00 }, /* 8 */
	{ 0x00, 0x38, 0x44, 0x44, 0x3C, 0x04, 0x38, 0x00 }, /* 9 */
	{ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00 }, /* : */
	{ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x10, 0x20 }, /* ; */
	{ 0x00, 0x00, 0x08, 0x10, 0x20, 0x10, 0x08, 0x00 }, /* < */
	{ 0x00, 0x00, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x00 }, /* = */
	{ 0x00, 0x00, 0x20, 0x10, 0x08, 0x10, 0x20, 0x00 }, /* > */
	{ 0x00, 0x38, 0x44, 0x08, 0x10, 0x00, 0x10, 0x00 }, /* ? */
	{ 0x00, 0x78, 0x84, 0x9C, 0xA4, 0x9C, 0x80, 0x70 }, /* @ */
	{ 0x00, 0x30, 0x48, 0x84, 0xFC, 0x84, 0x84, 0x00 }, /* A */
	{ 0x00, 0xF8, 0x84, 0xF8, 0x84, 0x84, 0xF8, 0x00 }, /* B */
	{ 0x00, 0x78, 0x84, 0x80, 0x80, 0x84, 0x78, 0x00 }, /* C */
	{ 0x00, 0xF8, 0x84, 0x84, 0x84, 0x84, 0xF8, 0x00 }, /* D */
	{ 0x00, 0xFC, 0x80, 0xF8, 0x80, 0x80, 0xFC, 0x00 }, /* E */
	{ 0x00, 0xFC, 0x80, 0xF8, 0x80, 0x80, 0x80, 0x00 }, /* F */
	{ 0x00, 0x78, 0x84, 0x80, 0x9C, 0x84, 0x7C, 0x00 }, /* G */
	{ 0x00, 0x84, 0x84, 0xFC, 0x84, 0x84, 0x84, 0x00 }, /* H */
	{ 0x00, 0x38, 0x10, 0x10, 0x10, 0x10, 0x38, 0x00 }, /* I */
	{ 0x00, 0x1C, 0x08, 0x08, 0x08, 0x88, 0x70, 0x00 }, /* J */
	{ 0x00, 0x88, 0x90, 0xA0, 0xD0, 0x88, 0x84, 0x00 }, /* K */
	{ 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0xFC, 0x00 }, /* L */
	{ 0x00, 0x84, 0xCC, 0xB4, 0x84, 0x84, 0x84, 0x00 }, /* M */
	{ 0x00, 0x84, 0xC4, 0xA4, 0x94, 0x8C, 0x84, 0x00 }, /* N */
	{ 0x00, 0x78, 0x84, 0x84, 0x84, 0x84, 0x78, 0x00 }, /* O */
	{ 0x00, 0xF8, 0x84, 0x84, 0xF8, 0x80, 0x80, 0x00 }, /* P */
	{ 0x00, 0x78, 0x84, 0x84, 0x84, 0x94, 0x78, 0x04 }, /* Q */
	{ 0x00, 0xF8, 0x84, 0x84, 0xF8, 0x88, 0x84, 0x00 }, /* R */
	{ 0x00, 0x78, 0x84, 0x60, 0x18, 0x84, 0x78, 0x00 }, /* S */
	{ 0x00, 0xFE, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00 }, /* T */
	{ 0x00, 0x84, 0x84, 0x84, 0x84, 0x84, 0x78, 0x00 }, /* U */
	{ 0x00, 0x44, 0x44, 0x28, 0x28, 0x10, 0x10, 0x00 }, /* V */
	{ 0x00, 0x82, 0x82, 0x92, 0xAA, 0x44, 0x44, 0x00 }, /* W */
	{ 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x82, 0x00 }, /* X */
	{ 0x00, 0x82, 0x44, 0x28, 0x10, 0x10, 0x10, 0x00 }, /* Y */
	{ 0x00, 0xFC, 0x08, 0x10, 0x20, 0x40, 0xFC, 0x00 }, /* Z */
	{ 0x38, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x38 }, /* [ */
	{ 0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x00 }, /* \ */
	{ 0x38, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x38 }, /* ] */
	{ 0x10, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ^ */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE }, /* _ */
	{ 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ` */
	{ 0x00, 0x00, 0x3C, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* a */
	{ 0x00, 0x40, 0x58, 0x64, 0x44, 0x44, 0x78, 0x00 }, /* b */
	{ 0x00, 0x00, 0x38, 0x44, 0x40, 0x44, 0x38, 0x00 }, /* c */
	{ 0x00, 0x04, 0x3C, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* d */
	{ 0x00, 0x00, 0x38, 0x44, 0x7C, 0x40, 0x3C, 0x00 }, /* e */
	{ 0x00, 0x0C, 0x10, 0x7C, 0x10, 0x10, 0x10, 0x00 }, /* f */
	{ 0x00, 0x00, 0x3C, 0x44, 0x4C, 0x34, 0x44, 0x38 }, /* g */
	{ 0x00, 0x40, 0x58, 0x64, 0x44, 0x44, 0x44, 0x00 }, /* h */
	{ 0x10, 0x00, 0x70, 0x10, 0x10, 0x10, 0x7C, 0x00 }, /* i */
	{ 0x04, 0x00, 0x04, 0x04, 0x04, 0x24, 0x44, 0x38 }, /* j */
	{ 0x00, 0x40, 0x44, 0x48, 0x70, 0x48, 0x44, 0x00 }, /* k */
	{ 0x00, 0x70, 0x10, 0x10, 0x10, 0x10, 0x7C, 0x00 }, /* l */
	{ 0x00, 0x00, 0xEC, 0x92, 0x92, 0x92, 0x92, 0x00 }, /* m */
	{ 0x00, 0x00, 0x58, 0x64, 0x44, 0x44, 0x44, 0x00 }, /* n */
	{ 0x00, 0x00, 0x38, 0x44, 0x44, 0x44, 0x38, 0x00 }, /* o */
	{ 0x00, 0x00, 0x58, 0x64, 0x44, 0x44, 0x78, 0x40 }, /* p */
	{ 0x00, 0x00, 0x3C, 0x44, 0x44, 0x4C, 0x34, 0x04 }, /* q */
	{ 0x00, 0x00, 0x2E, 0x30, 0x20, 0x20, 0x20, 0x00 }, /* r */
	{ 0x00, 0x00, 0x38, 0x40, 0x38, 0x04, 0x78, 0x00 }, /* s */
	{ 0x00, 0x10, 0x7C, 0x10, 0x10, 0x10, 0x0C, 0x00 }, /* t */
	{ 0x00, 0x00, 0x44, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* u */
	{ 0x00, 0x00, 0x44, 0x44, 0x28, 0x28, 0x10, 0x00 }, /* v */
	{ 0x00, 0x00, 0x82, 0x92, 0xAA, 0x44, 0x44, 0x00 }, /* w */
	{ 0x00, 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x00 }, /* x */
	{ 0x00, 0x00, 0x44, 0x44, 0x4C, 0x34, 0x44, 0x38 }, /* y */
	{ 0x00, 0x00, 0x7C, 0x08, 0x10, 0x20, 0x7C, 0x00 }, /* z */
	{ 0x0C, 0x10, 0x10, 0x60, 0x10, 0x10, 0x10, 0x0C }, /* { */
	{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10 }, /* | */
	{ 0x60, 0x10, 0x10, 0x10, 0x0C, 0x10, 0x10, 0x60 }, /* } */
	{ 0x34, 0x58, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ~ */
	{ 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE }, /* cursor */
	{ 0x00, 0x38, 0xE4, 0x40, 0xE0, 0x44, 0x38, 0x00 }, /* euro */
	{ 0x00, 0x00, 0x10, 0x28, 0x44, 0x28, 0x10, 0x00 }, /* lozenge */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x18 }, /* , */
	{ 0x00, 0x0C, 0x10, 0x7C, 0x10, 0x10, 0x10, 0x60 }, /* florin */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x36 }, /* ,, */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x92, 0x00 }, /* ... */
	{ 0x00, 0x10, 0x7C, 0x10, 0x7C, 0x10, 0x10, 0x10 }, /* dagger */
	{ 0x00, 0x10, 0x7C, 0x10, 0x7C, 0x10, 0x7C, 0x10 }, /* dbl dagger */
	{ 0x10, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* circum */
	{ 0x00, 0x60, 0xA8, 0xD0, 0x2F, 0x55, 0x1E, 0x00 }, /* per mille */
	{ 0x28, 0x10, 0x7C, 0x80, 0x78, 0x04, 0xF8, 0x00 }, /* S caron */
	{ 0x00, 0x00, 0x00, 0x10, 0x20, 0x10, 0x00, 0x00 }, /* < */
	{ 0x00, 0x3E, 0x48, 0x4E, 0x48, 0x48, 0x3E, 0x00 }, /* OE */
	{ 0x00, 0x40, 0x40, 0x60, 0xC0, 0x40, 0x7C, 0x00 }, /* L/ */
	{ 0x28, 0x10, 0xFC, 0x08, 0x30, 0x40, 0xFC, 0x00 }, /* Z caron */
	{ 0x00, 0x00, 0x70, 0x10, 0x10, 0x10, 0x7C, 0x00 }, /* dotless i */
	{ 0x00, 0x00, 0x28, 0x54, 0x38, 0x54, 0x28, 0x00 }, /* meta */
	{ 0x00, 0x18, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ` */
	{ 0x00, 0x08, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ' */
	{ 0x00, 0x36, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* `` */
	{ 0x00, 0x12, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* '' */
	{ 0x00, 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00 }, /* bullet */
	{ 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00 }, /* en dash */
	{ 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00 }, /* em dash */
	{ 0x34, 0x58, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* tilde */
	{ 0x00, 0xF4, 0x5C, 0x54, 0x00, 0x00, 0x00, 0x00 }, /* (TM) */
	{ 0x28, 0x10, 0x38, 0x40, 0x38, 0x04, 0x78, 0x00 }, /* s caron */
	{ 0x00, 0x00, 0x00, 0x10, 0x08, 0x10, 0x00, 0x00 }, /* > */
	{ 0x00, 0x00, 0x34, 0x4A, 0x4E, 0x48, 0x36, 0x00 }, /* oe */
	{ 0x00, 0x70, 0x10, 0x18, 0x30, 0x10, 0x7C, 0x00 }, /* l/ */
	{ 0x28, 0x10, 0x7C, 0x08, 0x10, 0x20, 0x7C, 0x00 }, /* z caron */
	{ 0x28, 0x00, 0x44, 0x28, 0x10, 0x10, 0x10, 0x00 }, /* Y" */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* nbsp */
	{ 0x00, 0x10, 0x00, 0x10, 0x10, 0x10, 0x10, 0x00 }, /* inv ! */
	{ 0x00, 0x08, 0x1C, 0x20, 0x20, 0x1C, 0x08, 0x00 }, /* cent */
	{ 0x00, 0x30, 0x40, 0xF0, 0x40, 0x44, 0x78, 0x00 }, /* pound */
	{ 0x00, 0x44, 0x38, 0x28, 0x38, 0x44, 0x00, 0x00 }, /* curr */
	{ 0x00, 0x44, 0x28, 0x10, 0x7C, 0x10, 0x10, 0x00 }, /* yen */
	{ 0x10, 0x10, 0x10, 0x00, 0x00, 0x10, 0x10, 0x10 }, /* broken bar */
	{ 0x00, 0x30, 0x40, 0x30, 0x48, 0x30, 0x08, 0x30 }, /* section */
	{ 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* dier */
	{ 0x00, 0x78, 0x84, 0xB4, 0xA4, 0xB4, 0x84, 0x78 }, /* (C) */
	{ 0x00, 0x3C, 0x44, 0x4C, 0x34, 0x00, 0x7C, 0x00 }, /* ^a */
	{ 0x00, 0x00, 0x00, 0x24, 0x48, 0x24, 0x00, 0x00 }, /* << */
	{ 0x00, 0x00, 0x00, 0x00, 0x7C, 0x04, 0x00, 0x00 }, /* not */
	{ 0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00 }, /* shy */
	{ 0x00, 0x78, 0x84, 0xB4, 0xA4, 0xA4, 0x84, 0x78 }, /* (R) */
	{ 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* macron */
	{ 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00 }, /* degree */
	{ 0x00, 0x00, 0x10, 0x7C, 0x10, 0x00, 0x7C, 0x00 }, /* +/- */
	{ 0x30, 0x10, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ^2 */
	{ 0x18, 0x08, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ^3 */
	{ 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* acute */
	{ 0x00, 0x00, 0x88, 0x88, 0x88, 0x88, 0xF4, 0x80 }, /* mu */
	{ 0x00, 0x6C, 0xE8, 0x68, 0x28, 0x28, 0x28, 0x28 }, /* paragraph */
	{ 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00 }, /* dot */
	{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10 }, /* cedilla */
	{ 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ^1 */
	{ 0x00, 0x38, 0x44, 0x44, 0x38, 0x00, 0x7C, 0x00 }, /* ^o */
	{ 0x00, 0x00, 0x00, 0x48, 0x24, 0x48, 0x00, 0x00 }, /* >> */
	{ 0x00, 0x44, 0x48, 0x50, 0x28, 0x4C, 0x84, 0x00 }, /* 1/4 */
	{ 0x00, 0x44, 0x48, 0x50, 0x38, 0x48, 0x8C, 0x00 }, /* 1/2 */
	{ 0x00, 0xC4, 0x48, 0xD0, 0x28, 0x4C, 0x84, 0x00 }, /* 3/4 */
	{ 0x00, 0x10, 0x00, 0x10, 0x20, 0x44, 0x38, 0x00 }, /* inv ? */
	{ 0x20, 0x10, 0x00, 0x38, 0x44, 0x7C, 0x44, 0x00 }, /* A` */
	{ 0x08, 0x10, 0x00, 0x38, 0x44, 0x7C, 0x44, 0x00 }, /* A' */
	{ 0x10, 0x28, 0x00, 0x38, 0x44, 0x7C, 0x44, 0x00 }, /* A^ */
	{ 0x34, 0x58, 0x00, 0x38, 0x44, 0x7C, 0x44, 0x00 }, /* A~ */
	{ 0x48, 0x00, 0x30, 0x48, 0x78, 0x84, 0x84, 0x00 }, /* A" */
	{ 0x30, 0x48, 0x30, 0x48, 0x78, 0x84, 0x84, 0x00 }, /* A ring */
	{ 0x00, 0x7C, 0x90, 0x9C, 0xF0, 0x90, 0x9C, 0x00 }, /* AE */
	{ 0x00, 0x78, 0x84, 0x80, 0x80, 0x84, 0x78, 0x10 }, /* C cedilla */
	{ 0x20, 0x10, 0xFC, 0x80, 0xF8, 0x80, 0xFC, 0x00 }, /* E` */
	{ 0x10, 0x20, 0xFC, 0x80, 0xF8, 0x80, 0xFC, 0x00 }, /* E' */
	{ 0x30, 0x48, 0xFC, 0x80, 0xF8, 0x80, 0xFC, 0x00 }, /* E^ */
	{ 0x48, 0x00, 0xFC, 0x80, 0xF8, 0x80, 0xFC, 0x00 }, /* E" */
	{ 0x20, 0x10, 0x38, 0x10, 0x10, 0x10, 0x38, 0x00 }, /* I` */
	{ 0x08, 0x10, 0x38, 0x10, 0x10, 0x10, 0x38, 0x00 }, /* I' */
	{ 0x10, 0x28, 0x38, 0x10, 0x10, 0x10, 0x38, 0x00 }, /* I^ */
	{ 0x28, 0x00, 0x38, 0x10, 0x10, 0x10, 0x38, 0x00 }, /* I" */
	{ 0x00, 0x78, 0x44, 0xE4, 0x44, 0x44, 0x78, 0x00 }, /* Eth */
	{ 0x68, 0xB0, 0x00, 0xC4, 0xA4, 0x94, 0x8C, 0x00 }, /* N~ */
	{ 0x10, 0x08, 0x00, 0x3C, 0x42, 0x42, 0x3C, 0x00 }, /* O` */
	{ 0x08, 0x10, 0x00, 0x3C, 0x42, 0x42, 0x3C, 0x00 }, /* O' */
	{ 0x18, 0x24, 0x00, 0x3C, 0x42, 0x42, 0x3C, 0x00 }, /* O^ */
	{ 0x34, 0x58, 0x00, 0x3C, 0x42, 0x42, 0x3C, 0x00 }, /* O~ */
	{ 0x48, 0x00, 0x78, 0x84, 0x84, 0x84, 0x78, 0x00 }, /* O" */
	{ 0x00, 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x00 }, /* mult */
	{ 0x00, 0x78, 0x8C, 0x94, 0xA4, 0xC4, 0x78, 0x00 }, /* O/ */
	{ 0x20, 0x10, 0x84, 0x84, 0x84, 0x84, 0x78, 0x00 }, /* U` */
	{ 0x10, 0x20, 0x84, 0x84, 0x84, 0x84, 0x78, 0x00 }, /* U' */
	{ 0x30, 0x48, 0x00, 0x84, 0x84, 0x84, 0x78, 0x00 }, /* U^ */
	{ 0x48, 0x00, 0x84, 0x84, 0x84, 0x84, 0x78, 0x00 }, /* U" */
	{ 0x08, 0x10, 0x44, 0x28, 0x10, 0x10, 0x10, 0x00 }, /* Y' */
	{ 0x00, 0x80, 0xF8, 0x84, 0x84, 0xF8, 0x80, 0x00 }, /* Thorn */
	{ 0x00, 0x38, 0x44, 0x58, 0x44, 0x44, 0x58, 0x00 }, /* sz */
	{ 0x10, 0x08, 0x00, 0x3C, 0x44, 0x4C, 0x34, 0x00 }, /* a` */
	{ 0x08, 0x10, 0x00, 0x3C, 0x44, 0x4C, 0x34, 0x00 }, /* a' */
	{ 0x18, 0x24, 0x00, 0x3C, 0x44, 0x4C, 0x34, 0x00 }, /* a^ */
	{ 0x34, 0x58, 0x00, 0x3C, 0x44, 0x4C, 0x34, 0x00 }, /* a~ */
	{ 0x24, 0x00, 0x3C, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* a" */
	{ 0x10, 0x28, 0x3C, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* a ring */
	{ 0x00, 0x00, 0x6C, 0x12, 0x7E, 0x90, 0x6E, 0x00 }, /* ae */
	{ 0x00, 0x00, 0x38, 0x44, 0x40, 0x44, 0x38, 0x10 }, /* c cedilla */
	{ 0x20, 0x10, 0x00, 0x3C, 0x48, 0x50, 0x3C, 0x00 }, /* e` */
	{ 0x08, 0x10, 0x00, 0x3C, 0x48, 0x50, 0x3C, 0x00 }, /* e' */
	{ 0x10, 0x28, 0x00, 0x3C, 0x48, 0x50, 0x3C, 0x00 }, /* e^ */
	{ 0x24, 0x00, 0x38, 0x44, 0x7C, 0x40, 0x3C, 0x00 }, /* e" */
	{ 0x20, 0x10, 0x00, 0x70, 0x10, 0x10, 0x7C, 0x00 }, /* i` */
	{ 0x08, 0x10, 0x00, 0x70, 0x10, 0x10, 0x7C, 0x00 }, /* i' */
	{ 0x10, 0x28, 0x00, 0x70, 0x10, 0x10, 0x7C, 0x00 }, /* i^ */
	{ 0x48, 0x00, 0x70, 0x10, 0x10, 0x10, 0x7C, 0x00 }, /* i" */
	{ 0x00, 0x3A, 0x14, 0x3C, 0x44, 0x44, 0x38, 0x00 }, /* eth */
	{ 0x34, 0x58, 0x00, 0x58, 0x64, 0x44, 0x44, 0x00 }, /* n~ */
	{ 0x20, 0x10, 0x00, 0x38, 0x44, 0x44, 0x38, 0x00 }, /* o` */
	{ 0x08, 0x10, 0x00, 0x38, 0x44, 0x44, 0x38, 0x00 }, /* o' */
	{ 0x10, 0x28, 0x00, 0x38, 0x44, 0x44, 0x38, 0x00 }, /* o^ */
	{ 0x34, 0x58, 0x00, 0x38, 0x44, 0x44, 0x38, 0x00 }, /* o~ */
	{ 0x28, 0x00, 0x38, 0x44, 0x44, 0x44, 0x38, 0x00 }, /* o" */
	{ 0x00, 0x00, 0x10, 0x00, 0x7C, 0x00, 0x10, 0x00 }, /* div */
	{ 0x00, 0x00, 0x38, 0x4C, 0x54, 0x64, 0x38, 0x00 }, /* o/ */
	{ 0x20, 0x10, 0x00, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* u` */
	{ 0x08, 0x10, 0x00, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* u' */
	{ 0x10, 0x28, 0x00, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* u^ */
	{ 0x28, 0x00, 0x44, 0x44, 0x44, 0x4C, 0x34, 0x00 }, /* u" */
	{ 0x08, 0x10, 0x44, 0x44, 0x4C, 0x34, 0x44, 0x38 }, /* y' */
	{ 0x00, 0x40, 0x78, 0x44, 0x44, 0x44, 0x78, 0x40 }, /* thorn */
	{ 0x28, 0x00, 0x44, 0x44, 0x4C, 0x34, 0x44, 0x38 }, /* y" */
};

unsigned char font_4x4[256][2] PROGMEM = {
	{ 0x00, 0x00 }, /* null */
	{ 0x84, 0x00 }, /* grave */
	{ 0x6C, 0x00 }, /* dbl acute */
	{ 0x40, 0x00 }, /* dot */
	{ 0x60, 0x00 }, /* ring */
	{ 0xA4, 0x00 }, /* caron */
	{ 0xAE, 0x00 }, /* breve */
	{ 0x00, 0x04 }, /* ogonek */
	{ 0x6A, 0x60 }, /* bksp */
	{ 0x2E, 0x20 }, /* tab */
	{ 0xE4, 0xA0 }, /* enter */
	{ 0xA4, 0x20 }, /* alt */
	{ 0x4A, 0xE0 }, /* shift */
	{ 0xAE, 0x80 }, /* return */
	{ 0x68, 0xA0 }, /* fi */
	{ 0x6A, 0xA0 }, /* fl */
	{ 0xAC, 0xA0 }, /* KK */
	{ 0x24, 0x80 }, /* fract */
	{ 0x6C, 0x40 }, /* sqrt */
	{ 0xE4, 0xE0 }, /* sum */
	{ 0xEA, 0xA0 }, /* prod */
	{ 0x64, 0xC0 }, /* int */
	{ 0x4A, 0xE0 }, /* delta */
	{ 0xA4, 0xE0 }, /* omega */
	{ 0x0E, 0xA0 }, /* pi */
	{ 0xC6, 0x60 }, /* deriv */
	{ 0x0E, 0xE0 }, /* inf */
	{ 0x82, 0x60 }, /* esc */
	{ 0x2C, 0xE0 }, /* <= */
	{ 0xE4, 0xE0 }, /* != */
	{ 0x86, 0xE0 }, /* >= */
	{ 0xC6, 0xC6 }, /* approx */
	{ 0x00, 0x00 }, /* space */
	{ 0x40, 0x40 }, /* ! */
	{ 0xAA, 0x00 }, /* " */
	{ 0xEA, 0xE0 }, /* # */
	{ 0x64, 0xC4 }, /* $ */
	{ 0xA4, 0xA0 }, /* % */
	{ 0xCE, 0xE0 }, /* & */
	{ 0x44, 0x00 }, /* ' */
	{ 0x68, 0x60 }, /* ( */
	{ 0xC2, 0xC0 }, /* ) */
	{ 0xE4, 0xA0 }, /* * */
	{ 0x4E, 0x40 }, /* + */
	{ 0x00, 0x24 }, /* , */
	{ 0x0E, 0x00 }, /* - */
	{ 0x00, 0x40 }, /* . */
	{ 0x24, 0x80 }, /* / */
	{ 0x4A, 0x40 }, /* 0 */
	{ 0x44, 0x40 }, /* 1 */
	{ 0xC4, 0x60 }, /* 2 */
	{ 0xC6, 0xC0 }, /* 3 */
	{ 0xAE, 0x20 }, /* 4 */
	{ 0x64, 0xC0 }, /* 5 */
	{ 0x46, 0x60 }, /* 6 */
	{ 0xE2, 0x40 }, /* 7 */
	{ 0x66, 0x60 }, /* 8 */
	{ 0x66, 0x20 }, /* 9 */
	{ 0x40, 0x40 }, /* : */
	{ 0x20, 0x24 }, /* ; */
	{ 0x2C, 0x20 }, /* < */
	{ 0xE0, 0xE0 }, /* = */
	{ 0x86, 0x80 }, /* > */
	{ 0xC2, 0x40 }, /* ? */
	{ 0x4E, 0x60 }, /* @ */
	{ 0x4E, 0xA0 }, /* A */
	{ 0xCE, 0xC0 }, /* B */
	{ 0x68, 0x60 }, /* C */
	{ 0xCA, 0xC0 }, /* D */
	{ 0xEC, 0xE0 }, /* E */
	{ 0xEC, 0x80 }, /* F */
	{ 0x6A, 0x60 }, /* G */
	{ 0xAE, 0xA0 }, /* H */
	{ 0xE4, 0xE0 }, /* I */
	{ 0xE4, 0xC0 }, /* J */
	{ 0xAC, 0xA0 }, /* K */
	{ 0x88, 0xE0 }, /* L */
	{ 0xEE, 0xA0 }, /* M */
	{ 0xCA, 0xA0 }, /* N */
	{ 0x4A, 0x40 }, /* O */
	{ 0xEE, 0x80 }, /* P */
	{ 0x4A, 0x60 }, /* Q */
	{ 0xEC, 0xA0 }, /* R */
	{ 0x64, 0xC0 }, /* S */
	{ 0xE4, 0x40 }, /* T */
	{ 0xAA, 0x40 }, /* U */
	{ 0xAE, 0x40 }, /* V */
	{ 0xAE, 0xE0 }, /* W */
	{ 0xA4, 0xA0 }, /* X */
	{ 0xA4, 0x40 }, /* Y */
	{ 0xC4, 0x60 }, /* Z */
	{ 0xE8, 0xE0 }, /* [ */
	{ 0x84, 0x20 }, /* \ */
	{ 0xE2, 0xE0 }, /* ] */
	{ 0x4A, 0x00 }, /* ^ */
	{ 0x00, 0xE0 }, /* _ */
	{ 0x84, 0x00 }, /* ` */
	{ 0x0E, 0x60 }, /* a */
	{ 0x46, 0x60 }, /* b */
	{ 0x04, 0x60 }, /* c */
	{ 0x26, 0x60 }, /* d */
	{ 0x0C, 0xE0 }, /* e */
	{ 0x6E, 0x40 }, /* f */
	{ 0x06, 0x6C }, /* g */
	{ 0x8C, 0xA0 }, /* h */
	{ 0x40, 0x40 }, /* i */
	{ 0x40, 0xC0 }, /* j */
	{ 0x8E, 0xA0 }, /* k */
	{ 0xC4, 0xE0 }, /* l */
	{ 0x0E, 0xE0 }, /* m */
	{ 0x0C, 0xA0 }, /* n */
	{ 0x06, 0x60 }, /* o */
	{ 0x06, 0x64 }, /* p */
	{ 0x06, 0x62 }, /* q */
	{ 0x06, 0x40 }, /* r */
	{ 0x06, 0xC0 }, /* s */
	{ 0x4E, 0x40 }, /* t */
	{ 0x0A, 0x60 }, /* u */
	{ 0x0A, 0x40 }, /* v */
	{ 0x0A, 0xE0 }, /* w */
	{ 0x06, 0x60 }, /* x */
	{ 0x0A, 0x48 }, /* y */
	{ 0x0C, 0x60 }, /* z */
	{ 0x6C, 0x60 }, /* { */
	{ 0x44, 0x40 }, /* | */
	{ 0xC6, 0xC0 }, /* } */
	{ 0xC6, 0x00 }, /* ~ */
	{ 0xEE, 0xE0 }, /* cursor */
	{ 0x6E, 0x60 }, /* euro */
	{ 0x4A, 0x40 }, /* lozenge */
	{ 0x00, 0x24 }, /* , */
	{ 0x6E, 0x48 }, /* florin */
	{ 0x00, 0x6C }, /* ,, */
	{ 0x00, 0xA0 }, /* ... */
	{ 0x4E, 0x44 }, /* dagger */
	{ 0x4E, 0xE4 }, /* dbl dagger */
	{ 0x4A, 0x00 }, /* circum */
	{ 0xA4, 0xE0 }, /* per mille */
	{ 0x64, 0xC0 }, /* S caron */
	{ 0x24, 0x20 }, /* < */
	{ 0x6C, 0x60 }, /* OE */
	{ 0x88, 0xE0 }, /* L/ */
	{ 0xC4, 0x60 }, /* Z caron */
	{ 0x04, 0x40 }, /* dotless i */
	{ 0xEA, 0xE0 }, /* meta */
	{ 0x64, 0x00 }, /* ` */
	{ 0x26, 0x00 }, /* ' */
	{ 0xFA, 0x00 }, /* `` */
	{ 0x5F, 0x00 }, /* '' */
	{ 0xEE, 0xE0 }, /* bullet */
	{ 0x0E, 0x00 }, /* en dash */
	{ 0x0F, 0x00 }, /* em dash */
	{ 0xC6, 0x00 }, /* tilde */
	{ 0xEA, 0x00 }, /* (TM) */
	{ 0x06, 0xC0 }, /* s caron */
	{ 0x42, 0x40 }, /* > */
	{ 0x0E, 0xF0 }, /* oe */
	{ 0xC4, 0xE0 }, /* l/ */
	{ 0x0C, 0x60 }, /* z caron */
	{ 0xA4, 0x40 }, /* Y" */
	{ 0x00, 0x00 }, /* nbsp */
	{ 0x04, 0x04 }, /* inv ! */
	{ 0x44, 0x64 }, /* cent */
	{ 0x68, 0xE0 }, /* pound */
	{ 0xA4, 0xA0 }, /* curr */
	{ 0xAE, 0x40 }, /* yen */
	{ 0x40, 0x40 }, /* broken bar */
	{ 0x6E, 0xC0 }, /* section */
	{ 0xA0, 0x00 }, /* dier */
	{ 0xFB, 0x9F }, /* (C) */
	{ 0xE6, 0x00 }, /* ^a */
	{ 0x5A, 0x50 }, /* << */
	{ 0x0E, 0x20 }, /* not */
	{ 0x0E, 0x00 }, /* shy */
	{ 0xF9, 0xBF }, /* (R) */
	{ 0xE0, 0x00 }, /* macron */
	{ 0x66, 0x00 }, /* degree */
	{ 0x4E, 0x4E }, /* +/- */
	{ 0xC6, 0x00 }, /* ^2 */
	{ 0xEC, 0x00 }, /* ^3 */
	{ 0x24, 0x00 }, /* acute */
	{ 0x0A, 0xE8 }, /* mu */
	{ 0xEE, 0x60 }, /* paragraph */
	{ 0x04, 0x00 }, /* dot */
	{ 0x00, 0x04 }, /* cedilla */
	{ 0x44, 0x00 }, /* ^1 */
	{ 0x66, 0x00 }, /* ^o */
	{ 0xA5, 0xA0 }, /* >> */
	{ 0xA4, 0xA0 }, /* 1/4 */
	{ 0xA4, 0xA0 }, /* 1/2 */
	{ 0xA4, 0xA0 }, /* 3/4 */
	{ 0x04, 0x86 }, /* inv ? */
	{ 0x4E, 0xA0 }, /* A` */
	{ 0x4E, 0xA0 }, /* A' */
	{ 0x4E, 0xA0 }, /* A^ */
	{ 0x4E, 0xA0 }, /* A~ */
	{ 0x4E, 0xA0 }, /* A" */
	{ 0x4E, 0xA0 }, /* A ring */
	{ 0x6C, 0xE0 }, /* AE */
	{ 0x68, 0x64 }, /* C cedilla */
	{ 0xEC, 0xE0 }, /* E` */
	{ 0xEC, 0xE0 }, /* E' */
	{ 0xEC, 0xE0 }, /* E^ */
	{ 0xEC, 0xE0 }, /* E" */
	{ 0xE4, 0xE0 }, /* I` */
	{ 0xE4, 0xE0 }, /* I' */
	{ 0xE4, 0xE0 }, /* I^ */
	{ 0xE4, 0xE0 }, /* I" */
	{ 0xCA, 0xC0 }, /* Eth */
	{ 0xCA, 0xA0 }, /* N~ */
	{ 0x4A, 0x40 }, /* O` */
	{ 0x4A, 0x40 }, /* O' */
	{ 0x4A, 0x40 }, /* O^ */
	{ 0x4A, 0x40 }, /* O~ */
	{ 0x4A, 0x40 }, /* O" */
	{ 0xA4, 0xA0 }, /* mult */
	{ 0x6A, 0xC0 }, /* O/ */
	{ 0xAA, 0x40 }, /* U` */
	{ 0xAA, 0x40 }, /* U' */
	{ 0xAA, 0x40 }, /* U^ */
	{ 0xAA, 0x40 }, /* U" */
	{ 0xA4, 0x40 }, /* Y' */
	{ 0x8E, 0x80 }, /* Thorn */
	{ 0x6A, 0x80 }, /* sz */
	{ 0x0E, 0x60 }, /* a` */
	{ 0x0E, 0x60 }, /* a' */
	{ 0x0E, 0x60 }, /* a^ */
	{ 0x0E, 0x60 }, /* a~ */
	{ 0x0E, 0x60 }, /* a" */
	{ 0x0E, 0x60 }, /* a ring */
	{ 0x0E, 0x70 }, /* ae */
	{ 0x04, 0x64 }, /* c cedilla */
	{ 0x0C, 0xE0 }, /* e` */
	{ 0x0C, 0xE0 }, /* e' */
	{ 0x0C, 0xE0 }, /* e^ */
	{ 0x0C, 0xE0 }, /* e" */
	{ 0x40, 0x40 }, /* i` */
	{ 0x40, 0x40 }, /* i' */
	{ 0x40, 0x40 }, /* i^ */
	{ 0x40, 0x40 }, /* i" */
	{ 0xE6, 0x60 }, /* eth */
	{ 0x0C, 0xA0 }, /* n~ */
	{ 0x06, 0x60 }, /* o` */
	{ 0x06, 0x60 }, /* o' */
	{ 0x06, 0x60 }, /* o^ */
	{ 0x06, 0x60 }, /* o~ */
	{ 0x06, 0x60 }, /* o" */
	{ 0x4E, 0x40 }, /* div */
	{ 0x07, 0xE0 }, /* o/ */
	{ 0x0A, 0x60 }, /* u` */
	{ 0x0A, 0x60 }, /* u' */
	{ 0x0A, 0x60 }, /* u^ */
	{ 0x0A, 0x60 }, /* u" */
	{ 0x0A, 0x48 }, /* y' */
	{ 0x46, 0x64 }, /* thorn */
	{ 0x0A, 0x48 }, /* y" */
};

unsigned char get_font_row_8x8(unsigned char ch, unsigned char row) {
	return pgm_read_byte(&(font_8x8[ch][row & 0x7]));
};

unsigned char get_font_row_4x4(unsigned char ch, unsigned char row) {
	unsigned char temp = pgm_read_byte(&(font_4x4[ch][(row & 0x3) >> 1]));
	if (row & 0x1) return (temp & 0x0F) | (temp << 4);
	else           return (temp & 0xF0) | (temp >> 4);
};
